package ar.com.profertil.santander.entity;

import java.io.Serializable;

import ar.com.profertil.utils.StringUtils;

/**
 * The Class DetalleEnvio.
 * 
 * @author augusto.ferrari@softtek.com
 * 
 *         Esta clase mapea la estructura Detalle.
 */
public class DetalleEnvio implements Serializable {

	/** The Constant serialVersionUID. */
	private static final long	serialVersionUID										= -1738485342954368990L;

	private static final int	TIPO_DE_REGISTRO										= 1;
	private static final int	TIPO_DE_OPERACION										= 1;
	private static final int	CODIGO_DE_MONEDA										= 1;
	private static final int	NUMERO_DE_CLIENTE										= 15;
	private static final int	TIPO_DE_COMPROBANTE										= 2;
	private static final int	NUMERO_DE_COMPROBANTE									= 15;
	private static final int	NUMERO_DE_CUOTA											= 4;
	private static final int	NOMBRE_DE_CLIENTE										= 30;
	private static final int	DIRECCION_DE_LCLIENTE									= 30;
	private static final int	DESCRIPCION_DE_LALOCALIDAD								= 20;
	private static final int	PREFIJO_DEL_CODIGO_POSTAL								= 1;
	private static final int	NUMERO_DEL_CODIGO_POSTAL								= 5;
	private static final int	UBICACION_MANZANA_DEL_CODIGO_POSTAL						= 4;
	private static final int	FECHA_DE_PRIMER_VENCIMIENTO								= 8;
	private static final int	IMPORTE_AL_PRIMER_VENCIMIENTO							= 15;
	private static final int	FECHA_DE_SEGUNDO_VENCIMIENTO							= 8;
	private static final int	IMPORTE_DE_SEGUNDO_VENCIMIENTO							= 15;
	private static final int	FECHA_HASTA_DESCUENTO									= 8;
	private static final int	IMPORTE_PRONTO_PAGO										= 15;
	private static final int	FECHA_HASTA_PUNITORIOS									= 8;
	private static final int	TASA_DE_PUNITORIOS										= 6;
	private static final int	MARCA_DE_EXCEPCION_DE_COBRO_DE_COMISIONAL_DE_POSITANTE	= 1;
	private static final int	FORMAS_DE_COBRO_PERMITIDAS								= 10;
	private static final int	NUMERO_DE_CUIT_DEL_CLIENTE								= 11;
	private static final int	CODIGO_DE_INGRESOS_BRUTOS								= 1;
	private static final int	CODIGO_DE_CONDICION_DE_IVA								= 1;
	private static final int	CODIGO_DE_CONCEPTO										= 3;
	private static final int	DESCRIPCION_DEL_CODIGO									= 40;
	private static final int	OBSERVACION_LIBRE_PRIMERA								= 18;
	private static final int	OBSERVACION_LIBRE_SEGUNDA								= 15;
	private static final int	OBSERVACION_LIBRE_TERCERA								= 15;
	private static final int	OBSERVACION_LIBRE_CUARTA								= 80;
	private static final int	RELLENO													= 243;

	// Variables del Detalle.
	/** The tipo de registro. */
	private String				tipoDeRegistro;

	/** The tipo de operacion. */
	private String				tipoDeOperacion;

	/** The codigo de moneda. */
	private String				codigoDeMoneda;

	/** The numero de cliente. */
	private String				numeroDeCliente;

	/** The tipo de comprobante. */
	private String				tipoDeComprobante;

	/** The numero de comprobante. */
	private String				numeroDeComprobante;

	/** The numero de cuota. */
	private String				numeroDeCuota;

	/** The nombre de cliente. */
	private String				nombreDeCliente;

	/** The direccion del cliente. */
	private String				direccionDelCliente;

	/** The descripcion de la localidad. */
	private String				descripcionDeLaLocalidad;

	/** The prefijo del codigo postal. */
	private String				prefijoDelCodigoPostal;

	/** The numero del codigo postal. */
	private String				numeroDelCodigoPostal;

	/** The ubicacion manzana del codigo postal. */
	private String				ubicacionManzanaDelCodigoPostal;

	/** The fecha de primer vencimiento. */
	private String				fechaDePrimerVencimiento;

	/** The importe al primer vencimiento. */
	private String				importeAlPrimerVencimiento;

	/** The fecha de segundo vencimiento. */
	private String				fechaDeSegundoVencimiento;

	/** The importe de segundo vencimiento. */
	private String				importeDeSegundoVencimiento;

	/** The fecha hasta descuento. */
	private String				fechaHastaDescuento;

	/** The importe pronto pago. */
	private String				importeProntoPago;

	/** The fecha hasta punitorios. */
	private String				fechaHastaPunitorios;

	/** The tasa de punitorios. */
	private String				tasaDePunitorios;

	/** The marca de excepcion de cobro de comision al depositante. */
	private String				marcaDeExcepcionDeCobroDeComisionAlDepositante;

	/** The formas de cobro permitidas. */
	private String				formasDeCobroPermitidas;

	/** The numero de cuit del cliente. */
	private String				numeroDeCuitDelCliente;

	/** The codigo de ingresos brutos. */
	private String				codigoDeIngresosBrutos;

	/** The codigo de condicion de iva. */
	private String				codigoDeCondicionDeIva;

	/** The codigo de concepto. */
	private String				codigoDeConcepto;

	/** The descripcion del codigo. */
	private String				descripcionDelCodigo;

	/** The observacion libre primera. */
	private String				observacionLibrePrimera;

	/** The observacion libre segunda. */
	private String				observacionLibreSegunda;

	/** The observacion libre tercera. */
	private String				observacionLibreTercera;

	/** The observacion libre cuarta. */
	private String				observacionLibreCuarta;

	/** The relleno. */
	private String				relleno;

	// Setters y getters para las variables del Detalle.
	/**
	 * Gets the tipo de registro.
	 * 
	 * @return the tipo de registro
	 */
	public String getTipoDeRegistro() {
		return tipoDeRegistro;
	}

	/**
	 * Sets the tipo de registro.
	 * 
	 * @param tipoDeRegistro
	 *            the new tipo de registro
	 */
	public void setTipoDeRegistro(String tipoDeRegistro) {
		this.tipoDeRegistro = tipoDeRegistro;
	}

	/**
	 * Gets the tipo de operacion.
	 * 
	 * @return the tipo de operacion
	 */
	public String getTipoDeOperacion() {
		return tipoDeOperacion;
	}

	/**
	 * Sets the tipo de operacion.
	 * 
	 * @param tipoDeOperacion
	 *            the new tipo de operacion
	 */
	public void setTipoDeOperacion(String tipoDeOperacion) {
		this.tipoDeOperacion = tipoDeOperacion;
	}

	/**
	 * Gets the codigo de moneda.
	 * 
	 * @return the codigo de moneda
	 */
	public String getCodigoDeMoneda() {
		return codigoDeMoneda;
	}

	/**
	 * Sets the codigo de moneda.
	 * 
	 * @param codigoDeMoneda
	 *            the new codigo de moneda
	 */
	public void setCodigoDeMoneda(String codigoDeMoneda) {
		this.codigoDeMoneda = codigoDeMoneda;
	}

	/**
	 * Gets the numero de cliente.
	 * 
	 * @return the numero de cliente
	 */
	public String getNumeroDeCliente() {
		return numeroDeCliente;
	}

	/**
	 * Sets the numero de cliente.
	 * 
	 * @param numeroDeCliente
	 *            the new numero de cliente
	 */
	public void setNumeroDeCliente(String numeroDeCliente) {
		this.numeroDeCliente = numeroDeCliente;
	}

	/**
	 * Gets the tipo de comprobante.
	 * 
	 * @return the tipo de comprobante
	 */
	public String getTipoDeComprobante() {
		return tipoDeComprobante;
	}

	/**
	 * Sets the tipo de comprobante.
	 * 
	 * @param tipoDeComprobante
	 *            the new tipo de comprobante
	 */
	public void setTipoDeComprobante(String tipoDeComprobante) {
		this.tipoDeComprobante = tipoDeComprobante;
	}

	/**
	 * Gets the numero de comprobante.
	 * 
	 * @return the numero de comprobante
	 */
	public String getNumeroDeComprobante() {
		return numeroDeComprobante;
	}

	/**
	 * Sets the numero de comprobante.
	 * 
	 * @param numeroDeComprobante
	 *            the new numero de comprobante
	 */
	public void setNumeroDeComprobante(String numeroDeComprobante) {
		this.numeroDeComprobante = numeroDeComprobante;
	}

	/**
	 * Gets the numero de cuota.
	 * 
	 * @return the numero de cuota
	 */
	public String getNumeroDeCuota() {
		return numeroDeCuota;
	}

	/**
	 * Sets the numero de cuota.
	 * 
	 * @param numeroDeCuota
	 *            the new numero de cuota
	 */
	public void setNumeroDeCuota(String numeroDeCuota) {
		this.numeroDeCuota = numeroDeCuota;
	}

	/**
	 * Gets the nombre de cliente.
	 * 
	 * @return the nombre de cliente
	 */
	public String getNombreDeCliente() {
		return nombreDeCliente;
	}

	/**
	 * Sets the nombre de cliente.
	 * 
	 * @param nombreDeCliente
	 *            the new nombre de cliente
	 */
	public void setNombreDeCliente(String nombreDeCliente) {
		this.nombreDeCliente = nombreDeCliente;
	}

	/**
	 * Gets the direccion del cliente.
	 * 
	 * @return the direccion del cliente
	 */
	public String getDireccionDelCliente() {
		return direccionDelCliente;
	}

	/**
	 * Sets the direccion del cliente.
	 * 
	 * @param direccionDelCliente
	 *            the new direccion del cliente
	 */
	public void setDireccionDelCliente(String direccionDelCliente) {
		this.direccionDelCliente = direccionDelCliente;
	}

	/**
	 * Gets the descripcion de la localidad.
	 * 
	 * @return the descripcion de la localidad
	 */
	public String getDescripcionDeLaLocalidad() {
		return descripcionDeLaLocalidad;
	}

	/**
	 * Sets the descripcion de la localidad.
	 * 
	 * @param descripcionDeLaLocalidad
	 *            the new descripcion de la localidad
	 */
	public void setDescripcionDeLaLocalidad(String descripcionDeLaLocalidad) {
		this.descripcionDeLaLocalidad = descripcionDeLaLocalidad;
	}

	/**
	 * Gets the prefijo del codigo postal.
	 * 
	 * @return the prefijo del codigo postal
	 */
	public String getPrefijoDelCodigoPostal() {
		return prefijoDelCodigoPostal;
	}

	/**
	 * Sets the prefijo del codigo postal.
	 * 
	 * @param prefijoDelCodigoPostal
	 *            the new prefijo del codigo postal
	 */
	public void setPrefijoDelCodigoPostal(String prefijoDelCodigoPostal) {
		this.prefijoDelCodigoPostal = prefijoDelCodigoPostal;
	}

	/**
	 * Gets the numero del codigo postal.
	 * 
	 * @return the numero del codigo postal
	 */
	public String getNumeroDelCodigoPostal() {
		return numeroDelCodigoPostal;
	}

	/**
	 * Sets the numero del codigo postal.
	 * 
	 * @param numeroDelCodigoPostal
	 *            the new numero del codigo postal
	 */
	public void setNumeroDelCodigoPostal(String numeroDelCodigoPostal) {
		this.numeroDelCodigoPostal = numeroDelCodigoPostal;
	}

	/**
	 * Gets the ubicacion manzana del codigo postal.
	 * 
	 * @return the ubicacion manzana del codigo postal
	 */
	public String getUbicacionManzanaDelCodigoPostal() {
		return ubicacionManzanaDelCodigoPostal;
	}

	/**
	 * Sets the ubicacion manzana del codigo postal.
	 * 
	 * @param ubicacionManzanaDelCodigoPostal
	 *            the new ubicacion manzana del codigo postal
	 */
	public void setUbicacionManzanaDelCodigoPostal(String ubicacionManzanaDelCodigoPostal) {
		this.ubicacionManzanaDelCodigoPostal = ubicacionManzanaDelCodigoPostal;
	}

	/**
	 * Gets the fecha de primer vencimiento.
	 * 
	 * @return the fecha de primer vencimiento
	 */
	public String getFechaDePrimerVencimiento() {
		return fechaDePrimerVencimiento;
	}

	/**
	 * Sets the fecha de primer vencimiento.
	 * 
	 * @param fechaDePrimerVencimiento
	 *            the new fecha de primer vencimiento
	 */
	public void setFechaDePrimerVencimiento(String fechaDePrimerVencimiento) {
		this.fechaDePrimerVencimiento = fechaDePrimerVencimiento;
	}

	/**
	 * Gets the importe al primer vencimiento.
	 * 
	 * @return the importe al primer vencimiento
	 */
	public String getImporteAlPrimerVencimiento() {
		return importeAlPrimerVencimiento;
	}

	/**
	 * Sets the importe al primer vencimiento.
	 * 
	 * @param importeAlPrimerVencimiento
	 *            the new importe al primer vencimiento
	 */
	public void setImporteAlPrimerVencimiento(String importeAlPrimerVencimiento) {
		this.importeAlPrimerVencimiento = importeAlPrimerVencimiento;
	}

	/**
	 * Gets the fecha de segundo vencimiento.
	 * 
	 * @return the fecha de segundo vencimiento
	 */
	public String getFechaDeSegundoVencimiento() {
		return fechaDeSegundoVencimiento;
	}

	/**
	 * Sets the fecha de segundo vencimiento.
	 * 
	 * @param fechaDeSegundoVencimiento
	 *            the new fecha de segundo vencimiento
	 */
	public void setFechaDeSegundoVencimiento(String fechaDeSegundoVencimiento) {
		this.fechaDeSegundoVencimiento = fechaDeSegundoVencimiento;
	}

	/**
	 * Gets the importe de segundo vencimiento.
	 * 
	 * @return the importe de segundo vencimiento
	 */
	public String getImporteDeSegundoVencimiento() {
		return importeDeSegundoVencimiento;
	}

	/**
	 * Sets the importe de segundo vencimiento.
	 * 
	 * @param importeDeSegundoVencimiento
	 *            the new importe de segundo vencimiento
	 */
	public void setImporteDeSegundoVencimiento(String importeDeSegundoVencimiento) {
		this.importeDeSegundoVencimiento = importeDeSegundoVencimiento;
	}

	/**
	 * Gets the fecha hasta descuento.
	 * 
	 * @return the fecha hasta descuento
	 */
	public String getFechaHastaDescuento() {
		return fechaHastaDescuento;
	}

	/**
	 * Sets the fecha hasta descuento.
	 * 
	 * @param fechaHastaDescuento
	 *            the new fecha hasta descuento
	 */
	public void setFechaHastaDescuento(String fechaHastaDescuento) {
		this.fechaHastaDescuento = fechaHastaDescuento;
	}

	/**
	 * Gets the importe pronto pago.
	 * 
	 * @return the importe pronto pago
	 */
	public String getImporteProntoPago() {
		return importeProntoPago;
	}

	/**
	 * Sets the importe pronto pago.
	 * 
	 * @param importeProntoPago
	 *            the new importe pronto pago
	 */
	public void setImporteProntoPago(String importeProntoPago) {
		this.importeProntoPago = importeProntoPago;
	}

	/**
	 * Gets the fecha hasta punutorios.
	 * 
	 * @return the fecha hasta punutorios
	 */
	public String getFechaHastaPunutorios() {
		return fechaHastaPunitorios;
	}

	/**
	 * Sets the fecha hasta punitorios.
	 * 
	 * @param fechaHastaPunitorios
	 *            the new fecha hasta punitorios
	 */
	public void setFechaHastaPunitorios(String fechaHastaPunitorios) {
		this.fechaHastaPunitorios = fechaHastaPunitorios;
	}

	/**
	 * Gets the tasa de punitorios.
	 * 
	 * @return the tasa de punitorios
	 */
	public String getTasaDePunitorios() {
		return tasaDePunitorios;
	}

	/**
	 * Sets the tasa de punitorios.
	 * 
	 * @param tasaDePunitorios
	 *            the new tasa de punitorios
	 */
	public void setTasaDePunitorios(String tasaDePunitorios) {
		this.tasaDePunitorios = tasaDePunitorios;
	}

	/**
	 * Gets the marca de excepcion de cobro de comision al depositante.
	 * 
	 * @return the marca de excepcion de cobro de comision al depositante
	 */
	public String getMarcaDeExcepcionDeCobroDeComisionAlDepositante() {
		return marcaDeExcepcionDeCobroDeComisionAlDepositante;
	}

	/**
	 * Sets the marca de excepcione cobro de comision al depositante.
	 * 
	 * @param marcaDeExcepcionDeCobroDeComisionAlDepositante
	 *            the new marca de excepcione cobro de comision al depositante
	 */
	public void setMarcaDeExcepcioneCobroDeComisionAlDepositante(String marcaDeExcepcionDeCobroDeComisionAlDepositante) {
		this.marcaDeExcepcionDeCobroDeComisionAlDepositante = marcaDeExcepcionDeCobroDeComisionAlDepositante;
	}

	/**
	 * Gets the formas de cobro permitidas.
	 * 
	 * @return the formas de cobro permitidas
	 */
	public String getFormasDeCobroPermitidas() {
		return formasDeCobroPermitidas;
	}

	/**
	 * Sets the formas de cobro permitidas.
	 * 
	 * @param formasDeCobroPermitidas
	 *            the new formas de cobro permitidas
	 */
	public void setFormasDeCobroPermitidas(String formasDeCobroPermitidas) {
		this.formasDeCobroPermitidas = formasDeCobroPermitidas;
	}

	/**
	 * Gets the numero de cuit del cliente.
	 * 
	 * @return the numero de cuit del cliente
	 */
	public String getNumeroDeCuitDelCliente() {
		return numeroDeCuitDelCliente;
	}

	/**
	 * Sets the numero de cuit del cliente.
	 * 
	 * @param numeroDeCuitDelCliente
	 *            the new numero de cuit del cliente
	 */
	public void setNumeroDeCuitDelCliente(String numeroDeCuitDelCliente) {
		this.numeroDeCuitDelCliente = numeroDeCuitDelCliente;
	}

	/**
	 * Gets the codigo de ingresos brutos.
	 * 
	 * @return the codigo de ingresos brutos
	 */
	public String getCodigoDeIngresosBrutos() {
		return codigoDeIngresosBrutos;
	}

	/**
	 * Sets the codigo de ingresos brutos.
	 * 
	 * @param codigoDeIngresosBrutos
	 *            the new codigo de ingresos brutos
	 */
	public void setCodigoDeIngresosBrutos(String codigoDeIngresosBrutos) {
		this.codigoDeIngresosBrutos = codigoDeIngresosBrutos;
	}

	/**
	 * Gets the codigo de condicion de iva.
	 * 
	 * @return the codigo de condicion de iva
	 */
	public String getCodigoDeCondicionDeIva() {
		return codigoDeCondicionDeIva;
	}

	/**
	 * Sets the codigo de condicion de iva.
	 * 
	 * @param codigoDeCondicionDeIva
	 *            the new codigo de condicion de iva
	 */
	public void setCodigoDeCondicionDeIva(String codigoDeCondicionDeIva) {
		this.codigoDeCondicionDeIva = codigoDeCondicionDeIva;
	}

	/**
	 * Gets the codigo de concepto.
	 * 
	 * @return the codigo de concepto
	 */
	public String getCodigoDeConcepto() {
		return codigoDeConcepto;
	}

	/**
	 * Sets the codigo de concepto.
	 * 
	 * @param codigoDeConcepto
	 *            the new codigo de concepto
	 */
	public void setCodigoDeConcepto(String codigoDeConcepto) {
		this.codigoDeConcepto = codigoDeConcepto;
	}

	/**
	 * Gets the descripcion del codigo.
	 * 
	 * @return the descripcion del codigo
	 */
	public String getDescripcionDelCodigo() {
		return descripcionDelCodigo;
	}

	/**
	 * Sets the descripcion del codigo.
	 * 
	 * @param descripcionDelCodigo
	 *            the new descripcion del codigo
	 */
	public void setDescripcionDelCodigo(String descripcionDelCodigo) {
		this.descripcionDelCodigo = descripcionDelCodigo;
	}

	/**
	 * Gets the observacion libre primera.
	 * 
	 * @return the observacion libre primera
	 */
	public String getObservacionLibrePrimera() {
		return observacionLibrePrimera;
	}

	/**
	 * Sets the observacion libre primera.
	 * 
	 * @param observacionLibrePrimera
	 *            the new observacion libre primera
	 */
	public void setObservacionLibrePrimera(String observacionLibrePrimera) {
		this.observacionLibrePrimera = observacionLibrePrimera;
	}

	/**
	 * Gets the observacion libre segunda.
	 * 
	 * @return the observacion libre segunda
	 */
	public String getObservacionLibreSegunda() {
		return observacionLibreSegunda;
	}

	/**
	 * Sets the observacion libre segunda.
	 * 
	 * @param observacionLibreSegunda
	 *            the new observacion libre segunda
	 */
	public void setObservacionLibreSegunda(String observacionLibreSegunda) {
		this.observacionLibreSegunda = observacionLibreSegunda;
	}

	/**
	 * Gets the observacion libre tercera.
	 * 
	 * @return the observacion libre tercera
	 */
	public String getObservacionLibreTercera() {
		return observacionLibreTercera;
	}

	/**
	 * Sets the observacion libre tercera.
	 * 
	 * @param observacionLibreTercera
	 *            the new observacion libre tercera
	 */
	public void setObservacionLibreTercera(String observacionLibreTercera) {
		this.observacionLibreTercera = observacionLibreTercera;
	}

	/**
	 * Gets the observacion libre cuarta.
	 * 
	 * @return the observacion libre cuarta
	 */
	public String getObservacionLibreCuarta() {
		return observacionLibreCuarta;
	}

	/**
	 * Sets the observacion libre cuarta.
	 * 
	 * @param observacionLibreCuarta
	 *            the new observacion libre cuarta
	 */
	public void setObservacionLibreCuarta(String observacionLibreCuarta) {
		this.observacionLibreCuarta = observacionLibreCuarta;
	}

	/**
	 * Gets the relleno.
	 * 
	 * @return the relleno
	 */
	public String getRelleno() {
		return relleno;
	}

	/**
	 * Sets the relleno.
	 * 
	 * @param relleno
	 *            the new relleno
	 */
	public void setRelleno(String relleno) {
		this.relleno = relleno;
	}

	// Representacion en cadena.
	/**
	 * To string.
	 * 
	 * @return the string
	 */
	@Override
	public String toString() {

		String resultado;

		resultado = tipoDeRegistro + tipoDeOperacion + codigoDeMoneda + numeroDeCliente + tipoDeComprobante + numeroDeComprobante
				+ numeroDeCuota + nombreDeCliente + direccionDelCliente + descripcionDeLaLocalidad + prefijoDelCodigoPostal
				+ numeroDelCodigoPostal + ubicacionManzanaDelCodigoPostal + fechaDePrimerVencimiento + importeAlPrimerVencimiento
				+ fechaDeSegundoVencimiento + importeDeSegundoVencimiento + fechaHastaDescuento + importeProntoPago + fechaHastaPunitorios
				+ tasaDePunitorios + marcaDeExcepcionDeCobroDeComisionAlDepositante + formasDeCobroPermitidas + numeroDeCuitDelCliente
				+ codigoDeIngresosBrutos + codigoDeCondicionDeIva + codigoDeConcepto + descripcionDelCodigo + observacionLibrePrimera
				+ observacionLibreSegunda + observacionLibreTercera + observacionLibreCuarta + relleno;

		return resultado;
	}

	public String toFileFormatter() {
		StringBuilder sb = new StringBuilder();
		sb.append(StringUtils.completeString(tipoDeRegistro, TIPO_DE_REGISTRO));
		sb.append(StringUtils.completeString(tipoDeOperacion, TIPO_DE_OPERACION));
		sb.append(StringUtils.completeNumber(codigoDeMoneda, CODIGO_DE_MONEDA));
		sb.append(StringUtils.completeNumber(numeroDeCliente, NUMERO_DE_CLIENTE));
		sb.append(StringUtils.completeString(tipoDeComprobante, TIPO_DE_COMPROBANTE));
		sb.append(StringUtils.completeString(numeroDeComprobante, NUMERO_DE_COMPROBANTE));
		sb.append(StringUtils.completeNumber(numeroDeCuota, NUMERO_DE_CUOTA));
		sb.append(StringUtils.completeString(nombreDeCliente, NOMBRE_DE_CLIENTE));
		sb.append(StringUtils.completeString(direccionDelCliente, DIRECCION_DE_LCLIENTE));
		sb.append(StringUtils.completeString(descripcionDeLaLocalidad, DESCRIPCION_DE_LALOCALIDAD));
		sb.append(StringUtils.completeString(prefijoDelCodigoPostal, PREFIJO_DEL_CODIGO_POSTAL));
		sb.append(StringUtils.completeNumber(numeroDelCodigoPostal, NUMERO_DEL_CODIGO_POSTAL));
		sb.append(StringUtils.completeString(ubicacionManzanaDelCodigoPostal, UBICACION_MANZANA_DEL_CODIGO_POSTAL));
		sb.append(StringUtils.completeNumber(fechaDePrimerVencimiento, FECHA_DE_PRIMER_VENCIMIENTO));
		sb.append(StringUtils.completeNumber(importeAlPrimerVencimiento, IMPORTE_AL_PRIMER_VENCIMIENTO));
		sb.append(StringUtils.completeNumber(fechaDeSegundoVencimiento, FECHA_DE_SEGUNDO_VENCIMIENTO));
		sb.append(StringUtils.completeNumber(importeDeSegundoVencimiento, IMPORTE_DE_SEGUNDO_VENCIMIENTO));
		sb.append(StringUtils.completeNumber(fechaHastaDescuento, FECHA_HASTA_DESCUENTO));
		sb.append(StringUtils.completeNumber(importeProntoPago, IMPORTE_PRONTO_PAGO));
		sb.append(StringUtils.completeNumber(fechaHastaPunitorios, FECHA_HASTA_PUNITORIOS));
		sb.append(StringUtils.completeNumber(tasaDePunitorios, TASA_DE_PUNITORIOS));
		sb.append(StringUtils.completeString(marcaDeExcepcionDeCobroDeComisionAlDepositante,
				MARCA_DE_EXCEPCION_DE_COBRO_DE_COMISIONAL_DE_POSITANTE));
		sb.append(StringUtils.completeString(formasDeCobroPermitidas, FORMAS_DE_COBRO_PERMITIDAS));
		sb.append(StringUtils.completeNumber(numeroDeCuitDelCliente, NUMERO_DE_CUIT_DEL_CLIENTE));
		sb.append(StringUtils.completeNumber(codigoDeIngresosBrutos, CODIGO_DE_INGRESOS_BRUTOS));
		sb.append(StringUtils.completeNumber(codigoDeCondicionDeIva, CODIGO_DE_CONDICION_DE_IVA));
		sb.append(StringUtils.completeString(codigoDeConcepto, CODIGO_DE_CONCEPTO));
		sb.append(StringUtils.completeString(descripcionDelCodigo, DESCRIPCION_DEL_CODIGO));
		sb.append(StringUtils.completeString(observacionLibrePrimera, OBSERVACION_LIBRE_PRIMERA));
		sb.append(StringUtils.completeString(observacionLibreSegunda, OBSERVACION_LIBRE_SEGUNDA));
		sb.append(StringUtils.completeString(observacionLibreTercera, OBSERVACION_LIBRE_TERCERA));
		sb.append(StringUtils.completeString(observacionLibreCuarta, OBSERVACION_LIBRE_CUARTA));
		sb.append(StringUtils.completeString(relleno, RELLENO));
		return sb.toString();
	}
}